home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / include / MotifApp / DialogManager.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-07-17  |  1.9 KB  |  70 lines

  1. ///////////////////////////////////////////////////////////////////////////////
  2. //////////////////////////////////////////////////////////////////////////////
  3. //         This example code is from the book:
  4. //
  5. //           Object-Oriented Programming with C++ and OSF/Motif
  6. //         by
  7. //           Douglas Young
  8. //           Prentice Hall, 1992
  9. //           ISBN 0-13-630252-1    
  10. //
  11. //         Copyright 1991 by Prentice Hall
  12. //         All Rights Reserved
  13. //
  14. //  Permission to use, copy, modify, and distribute this software for 
  15. //  any purpose except publication and without fee is hereby granted, provided 
  16. //  that the above copyright notice appear in all copies of the software.
  17. ///////////////////////////////////////////////////////////////////////////////
  18. //////////////////////////////////////////////////////////////////////////////
  19.  
  20.  
  21. //////////////////////////////////////////////////////////
  22. // DialogManager.h: A base class for cached dialogs
  23. //////////////////////////////////////////////////////////
  24. #ifndef DIALOGMANAGER_H
  25. #define DIALOGMANAGER_H
  26.  
  27. #include "UIComponent.h"
  28. #include "DialogCallbackData.h"
  29.  
  30. class DialogManager : public UIComponent {
  31.     
  32.   private:
  33.     
  34.     Widget getDialog(); 
  35.     
  36.     static void destroyTmpDialogCallback ( Widget, 
  37.                       XtPointer, 
  38.                       XtPointer );
  39.     static void okCallback ( Widget, 
  40.                 XtPointer, 
  41.                 XtPointer );
  42.     
  43.     static void cancelCallback ( Widget, 
  44.                 XtPointer, 
  45.                 XtPointer );
  46.     
  47.     static void helpCallback ( Widget, 
  48.                   XtPointer, 
  49.                   XtPointer );
  50.     
  51.     void cleanup ( Widget, DialogCallbackData* );
  52.     
  53.   protected:
  54.     
  55.     // Called to get a new dialog
  56.     
  57.     virtual Widget createDialog ( Widget ) = 0;   
  58.     
  59.   public:
  60.     
  61.     DialogManager ( char * );
  62.     
  63.     virtual Widget post ( char *, 
  64.              void *clientData      = NULL,
  65.              DialogCallback ok     = NULL,
  66.              DialogCallback cancel = NULL,
  67.              DialogCallback help   = NULL );
  68. };
  69. #endif
  70.